home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
081
/
omam_112.arc
/
NEW_112.DOC
< prev
next >
Wrap
Text File
|
1987-12-18
|
12KB
|
298 lines
This file summarizes changes from version 1.01 of RASMAM to
version 1.12:
----
The program will no longer crash when your user list is large.
Version 1.10 and earlier tried to load as many user names as
possible into memory then used a hash table to look up a name
when necessary. If the name wasn't in memory, RASMAM was
supposed to look in the user file. But it didn't do it very
well.
Version 1.12 does not load any names into memory. Instead, it
builds a hash table using a 30-bit hash. This definitely
improves the execution speed and makes RASMAM work with large
user files. Conflicts (which should be rare) are resolved by
looking in the user file.
The maximum number of users that RASMAM can handle is 2000. If
you have more than 2000 names in your user list, RASMAM will
display an error message and exit.
-----
The hash used to store the subject of each message is now 16-bits
long. This should reduce the chances of two different subjects
being linked by the RENUM CHAIN or RENUM SUBJECT commands.
-----
After a RENUM CHAIN or RENUM SUBJECT, the last message in an area
should no longer display a message saying "There is a reply."
-----
RASMAM now uses the Opus binary date stamps in each message.
-----
The names of the built-in macros have changed (since 1.01)
var. formerly becomes
#JULIAN# #J# -- the current day of the year (001..366)
#DAY# #D# -- the current day of the month (01..31)
#MONTH# #M# -- the current month (01..12)
#YEAR# #Y# -- the current year (87..99)
$WEEKDAY$ $D$ -- the current weekday (SUN..SAT)
$MONTH$ $M$ -- the current month (JAN..DEC)
$SCRIPT$ $C$ -- name of the current MAM configuration file
%var% -- value of specified environment variable
%% -- %
## -- #
$$ -- $
New built-in macros:
#HOUR# -- hour when MAM was run (00..23)
#MINUTE# -- minute when MAM was run (00..59)
#AREA# -- number of current message area (00..99)
#user name# -- user number of specified user (0..???)
$PATH$ -- path to current message area
$net/node$ -- Hex string NNNNnnn where NNNN is net and
-- nnnn is node. For example,
-- $366/14$ becomes 016E000E
LOCK
UNLOCK
Stop/Start Check Messages Waiting for User
LOCK {user|priv}
UNLOCK {user|priv}
The LOCK command tells MAM to stop listing messages waiting for
the specified user (or group of users by privilege) until an
UNLOCK command is issued for the user (or users). For example,
suppose you have a regular caller, James Young, that is the Sysop
of another BBS. His board participates in the MEADOW echomail
conference so you don't want MAM to list messages for him waiting
in the MEADOW area. You can use the following LOCK command before
checking MEADOW:
LOCK James Young
If you don't want MAM to list messages waiting for TWITS, use:
LOCK Twits
The UNLOCK command reverses the effect of the LOCK command.
Following up on the example earlier, you should UNLOCK James
Young after scanning MEADOW so he will be notified of messages
waiting in other areas:
UNLOCK James Young
KILL
Delete messages based on number of messages or age of messages
KILL [PRIVATE] [RECEIVED] [WHEN i] [DAYS j] [SKIP k] [KEEP l]
The SKIP option has been added. The SKIP option specifies that
the KILL command should not delete any of the first k messages in
the area.
Kill all messages over 90 days old except the first 5 messages:
KILL DAYS 90 SKIP 5
ARCHIVE
Move messages to a text file
ARCHIVE [PRIVATE] [RECEIVED] [DAYS i] [SKIP j] [KEEP k] [PRIVATE] TO file
The SKIP option has been added. It functions as in the KILL
command.
INCLUDE
Include a script file
INCLUDE script-file
The INCLUDE command causes RASMAM to begin reading the specified
script file. When the end of that script is reached, RASMAM
resumes reading the current script file. Just a word of warning,
the INCLUDE command is slow.
INCLUDE c:\opus\include.mam
The name of the script file should be fully qualified with a
drive, path. and extension specified. INCLUDEs may be nested up
to 10 levels.
IF
END IF
Conditionally execute commands
IF [@NOT] expression [THEN]
... commands ...
END IF
The IF and END IF commands allow you to conditionally execute
portions of your script file.
The conditional expression is:
value1 == value2 (or =) true if value1 equals value2
value1 != value2 (or <>) true if value1 doesn't equal value2
value1 < value2 true if value1 less than value2
value1 > value2 true if value1 greater than value2
value1 <= value2 true if value1 less than or equal to value2
value1 >= value2 true if value1 greater than or equal to value2
value1 IN value2 true if value1 is contained in value2
@EXISTS filespec true if filespec exists
Values are all one word (no spaces). @NOT inverts the result of
the condition. You MUST put a space before and one after the
operator.
Here are some examples of IF/END IF commands:
IF $MONTH$ == JAN THEN
LOG It is January.
END IF
LOG IF/END IFs may be nested up to 32767 levels
IF @EXISTS c:\opus\system99.bbs THEN
IF $WEEKDAY$ IN TUETHU THEN
LOG It is Tuesday or Thursday ($WEEKDAY$) and SYSTEM99.BBS exists
END IF
IF $MONTH$ <> JAN THEN
LOG System99.BBS exists, but the month is not January
END IF
END IF
ERASE
Deletes the specified file or files.
ERASE filespec
The ERASE command deletes the files that match the specified
filespec. Wildcards may be used. For example,
Delete BULLETIN.BBS and BULLETIN.GBS in C:\OPUS\MISC:
ERASE c:\opus\misc\bulletin.?bs
Delete the custom welcome waiting for the user named "SYSOP":
ERASE c:\opus\#sysop#.BBS
ADD
Concatenate files
ADD filespec TO filespec GIVING filespec
The ADD command concatenates (adds) two files and puts the result
in a third file. The output file is overwritten if it exists.
The output file may be the same file as one of the files being
concatenated.
Add a file to the front of BULLETIN.BBS:
ADD $misc$\bull1.bbs TO $misc$\bulletin.bbs GIVING $misc$\bulletin.bbs
SHELL
Execute a DOS command
SHELL command-line
The SHELL command executes a DOS command. The SHELL command
requires DOS 3.1 or higher.
Display a directory:
SHELL dir $misc$
ARC
PKARC
ARC
or
PKARC
The ARC and PKARC commands select the archive utility that
RASMAM's Picture Gallery commands will use to read the list of
picture files and to extract pictures.
ARC tells RASMAM to use SEA's arc utility (PKARC selects PKWARE's
program). Your copy of ARC (or PKARC and PKXARC) must be in the
current path.
PATH TEMP
Declare a directory for temporary files
PATH TEMP directory
The PATH TEMP command tells RASMAM the path to a directory where
it should create its temporary files. RASMAM uses this directory
to store the picture file that it extracts from an archive.
After it finishes, RASMAM deletes the file from the directory.
Therefore, to avoid the possibility of RASMAM overwriting an
existing file, create a temporary directory just for RASMAM's
use.
PICTURE FILE
Declare a picture archive file
PICTURE FILE filespec
PICTURE FILE tells RASMAM the name of an archive containing
pictures. RASMAM will read the names of the picture files from
the archive.
PICTURE HEADER
PICTURE TRAILER
PICTURE INDEX
PICTURE HEADER filespec
PICTURE TRAILER filespec
PICTURE INDEX filespec
PICTURE HEADER supplies the name of a file that will be prefixed
to any picture file that RASMAM creates.
PICTURE TRAILER supplies the name of a file that will be appended
to any picture file that RASMAM creates.
PICTURE INDEX supplies the name of a file that RASMAM uses to
keep track of the last picture it displayed.
PICTURE NEXT
PICTURE RANDOM
PICTURE {NEXT|RANDOM} TO filespec
PICTURE NEXT chooses the next picture in the current picture
archive and sends it to the specified file (adding the header and
trailer if any).
PICTURE RANDOM chooses a picture at random from the current
picture archive file and sends it to the specified file.
DATE
Select Date Type
DATE {ARRIVED | WRITTEN}
The DATE command allows you to select how RASMAM will determine
the age of a message. DATE ARRIVED tells RASMAM to use the date
the message arrived on your system. DATE WRITTEN tells RASMAM to
use the date the message was created.
MESSAGES
The MESSAGES command is no longer needed and if used will produce
a warning. RASMAM will only handle messages numbered 1 through
2000. If you have any messages which are numbered greater than
2000 then you'll need to purge the message area to reduce the
number of messages to less than 2000 then renumber using another
renumbering utility such as RENUM.